#ifndef PCG_RANDOM_H
#define PCG_RANDOM_H

/*!
1-dimensional hash function.
*/
unsigned int pcg_hash(unsigned int h);
/*!
2-dimensional hash function.
*/
unsigned int pcg_hash2(unsigned int x, unsigned int y);
/*!
3-dimensional hash function.
*/
unsigned int pcg_hash3(unsigned int x, unsigned int y, unsigned int z);
/*!
Seed function for the pseudorandom number generator.
*/
void pcg_sdrand(unsigned long seed);
/*!
Double precision pseudorandom number generator.
*/
double pcg_drand();

#endif // PCG_RANDOM_H